home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 August: Tool Chest / Dev.CD Aug 94.toast / New System Software Extensions / OpenDoc A6 / SOM / OpenDoc and SOM / C / Document.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-19  |  14.1 KB  |  461 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Locrian:WWDCSun:C:Document.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: somc/smemit.c
  7.  *     SOM Emitter emith.dll: somc/smmain.c
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Constants
  13.  * 
  14.  */
  15.  
  16.  
  17. #ifndef SOM_ODDocument_h
  18. #define SOM_ODDocument_h
  19.  
  20.  
  21. #include <som.h>
  22.  
  23. /*
  24.  * -- This emitter treats Method Tokens as Thunks by default
  25.  * -- Use the sc modifier "nothunks" to change this default
  26.  */
  27. #undef somresolve_
  28. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  29.  
  30. /*
  31.  * Define the class name as an object type
  32.  */
  33. #ifndef ODDocument
  34. #define ODDocument SOMObject
  35. #endif
  36. #include <RefCtObj.h>
  37.  
  38. /*
  39.  * Start of user-defined types:
  40.  */
  41. #ifndef ODExtension
  42.     #define ODExtension SOMObject
  43. #endif /* ODExtension */
  44. #ifndef ODStorageUnitCursor
  45.     #define ODStorageUnitCursor SOMObject
  46. #endif /* ODStorageUnitCursor */
  47. #ifndef ODLinkSource
  48.     #define ODLinkSource SOMObject
  49. #endif /* ODLinkSource */
  50. #ifndef ODSession
  51.     #define ODSession SOMObject
  52. #endif /* ODSession */
  53. #ifndef ODStorageUnitRefIterator
  54.     #define ODStorageUnitRefIterator SOMObject
  55. #endif /* ODStorageUnitRefIterator */
  56. #ifndef ODLink
  57.     #define ODLink SOMObject
  58. #endif /* ODLink */
  59. #ifndef ODPart
  60.     #define ODPart SOMObject
  61. #endif /* ODPart */
  62. #ifndef ODStorageUnitView
  63.     #define ODStorageUnitView SOMObject
  64. #endif /* ODStorageUnitView */
  65. #ifndef ODLinkSpec
  66.     #define ODLinkSpec SOMObject
  67. #endif /* ODLinkSpec */
  68. #ifndef ODFrame
  69.     #define ODFrame SOMObject
  70. #endif /* ODFrame */
  71. #ifndef ODShape
  72.     #define ODShape SOMObject
  73. #endif /* ODShape */
  74. #ifndef ODContainer
  75.     #define ODContainer SOMObject
  76. #endif /* ODContainer */
  77.  
  78. /*
  79.  * End of user-defined types.
  80.  */
  81.  
  82. #define ODDocument_MajorVersion 0
  83. #define ODDocument_MinorVersion 0
  84.  
  85. /*
  86.  * External name shortening if required
  87.  */
  88. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  89. #define ODDocumentNewClass c
  90. #define ODDocumentClassData d
  91. #define ODDocumentCClassData x
  92. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  93. /*--------------Migration------------*/
  94. #define ODDocument_classObj ODDocumentClassData.classObject
  95. #define _ODDocument ODDocument_classObj
  96.  
  97. /*
  98.  * Declare the class creation procedure
  99.  */
  100.  
  101. #if applec ^ PRAGMA_LIB_EXPORT
  102. #pragma lib_export on
  103. #endif
  104.  
  105. SOMEXTERN SOMClass * SOMLINK ODDocumentNewClass(integer4 somtmajorVersion,
  106.         integer4 somtminorVersion);
  107.  
  108. /*
  109.  * Declare the class data structure
  110.  */
  111. SOMEXTERN struct ODDocumentClassDataStructure {
  112.     SOMAny *classObject;
  113.     somMToken GetContainer;
  114.     somMToken GetID;
  115.     somMToken GetName;
  116.     somMToken SetName;
  117.     somMToken GetDocumentProperties;
  118.     somMToken CollapseDrafts;
  119.     somMToken GetDraft;
  120.     somMToken GetBaseDraft;
  121.     somMToken CreateDraft;
  122.     somMToken SaveToAPrevDraft;
  123.     somMToken SetBaseDraftFromForeignDraft;
  124.     somMToken InitDocument;
  125.     somMToken ReleaseDraft;
  126. }
  127. #ifdef SOM_NO_DATA_EXPORTS
  128.     * ODDocumentGetClassData ( void );
  129. #   undef ODDocumentClassData
  130. #   define ODDocumentClassData (*ODDocumentGetClassData())
  131. #else
  132.       ODDocumentClassData;
  133. #endif /* SOM_NO_DATA_EXPORTS */
  134.  
  135. #if applec ^ PRAGMA_LIB_EXPORT
  136. #pragma lib_export off
  137. #endif
  138.  
  139.  
  140. /*
  141.  * Declare the C specific class data structure
  142.  */
  143. SOMEXTERN struct ODDocumentCClassDataStructure {
  144.     somMethodTabs parentMtab;
  145.     somDToken instanceDataToken;
  146. } ODDocumentCClassData;
  147.  
  148. /*
  149.  * New and Renew macros for ODDocument
  150.  */
  151. #define ODDocumentNew() \
  152.     ( ( ! (ODDocumentClassData.classObject) && \
  153.         (ODDocumentNewClass(ODDocument_MajorVersion, ODDocument_MinorVersion)) ), \
  154.       (_somNew(ODDocumentClassData.classObject)) )
  155. #define ODDocumentRenew(buf) \
  156.     ( _somRenew(ODDocumentClassData.classObject, buf) )
  157.  
  158. /*
  159.  * Override method: somInit
  160.  */
  161. #define ODDocument_somInit(somSelf) \
  162.     SOMObject_somInit(somSelf)
  163.  
  164. /*
  165.  * Override method: somUninit
  166.  */
  167. #define ODDocument_somUninit(somSelf) \
  168.     SOMObject_somUninit(somSelf)
  169.  
  170. /*
  171.  * Override method: IncrementRefCount
  172.  */
  173. #define ODDocument_IncrementRefCount(somSelf,ev) \
  174.     ODRefCntObject_IncrementRefCount(somSelf,ev)
  175.  
  176. /*
  177.  * Override method: Release
  178.  */
  179. #define ODDocument_Release(somSelf,ev) \
  180.     ODRefCntObject_Release(somSelf,ev)
  181.  
  182. /*
  183.  * New Method: GetContainer
  184.  */
  185. typedef ODContainer*   (SOMLINK *somTD_ODDocument_GetContainer)(ODDocument *somSelf, Environment *ev);
  186. #define somMD_ODDocument_GetContainer "::ODDocument::GetContainer"
  187. #define ODDocument_GetContainer(somSelf,ev) \
  188.     (SOM_Resolve(somSelf, ODDocument, GetContainer) \
  189.     (somSelf,ev))
  190. #ifndef SOMGD_GetContainer
  191.     #if (defined(_GetContainer) || defined(__GetContainer))
  192.         #undef _GetContainer
  193.         #undef __GetContainer
  194.         #define SOMGD_GetContainer 1
  195.     #else
  196.         #define _GetContainer ODDocument_GetContainer
  197.     #endif /* _GetContainer */
  198. #endif /* SOMGD_GetContainer */
  199.  
  200. /*
  201.  * New Method: GetID
  202.  */
  203. typedef ODDocumentID   (SOMLINK *somTD_ODDocument_GetID)(ODDocument *somSelf, Environment *ev);
  204. #define somMD_ODDocument_GetID "::ODDocument::GetID"
  205. #define ODDocument_GetID(somSelf,ev) \
  206.     (SOM_Resolve(somSelf, ODDocument, GetID) \
  207.     (somSelf,ev))
  208. #ifndef SOMGD_GetID
  209.     #if (defined(_GetID) || defined(__GetID))
  210.         #undef _GetID
  211.         #undef __GetID
  212.         #define SOMGD_GetID 1
  213.     #else
  214.         #define _GetID ODDocument_GetID
  215.     #endif /* _GetID */
  216. #endif /* SOMGD_GetID */
  217.  
  218. /*
  219.  * New Method: GetName
  220.  */
  221. typedef ODDocumentName   (SOMLINK *somTD_ODDocument_GetName)(ODDocument *somSelf, Environment *ev);
  222. #define somMD_ODDocument_GetName "::ODDocument::GetName"
  223. #define ODDocument_GetName(somSelf,ev) \
  224.     (SOM_Resolve(somSelf, ODDocument, GetName) \
  225.     (somSelf,ev))
  226. #ifndef SOMGD_GetName
  227.     #if (defined(_GetName) || defined(__GetName))
  228.         #undef _GetName
  229.         #undef __GetName
  230.         #define SOMGD_GetName 1
  231.     #else
  232.         #define _GetName ODDocument_GetName
  233.     #endif /* _GetName */
  234. #endif /* SOMGD_GetName */
  235.  
  236. /*
  237.  * New Method: SetName
  238.  */
  239. typedef void   (SOMLINK *somTD_ODDocument_SetName)(ODDocument *somSelf, Environment *ev,
  240.         ODDocumentName name);
  241. #define somMD_ODDocument_SetName "::ODDocument::SetName"
  242. #define ODDocument_SetName(somSelf,ev,name) \
  243.     (SOM_Resolve(somSelf, ODDocument, SetName) \
  244.     (somSelf,ev,name))
  245. #ifndef SOMGD_SetName
  246.     #if (defined(_SetName) || defined(__SetName))
  247.         #undef _SetName
  248.         #undef __SetName
  249.         #define SOMGD_SetName 1
  250.     #else
  251.         #define _SetName ODDocument_SetName
  252.     #endif /* _SetName */
  253. #endif /* SOMGD_SetName */
  254.  
  255. /*
  256.  * New Method: GetDocumentProperties
  257.  */
  258. typedef ODStorageUnit*   (SOMLINK *somTD_ODDocument_GetDocumentProperties)(ODDocument *somSelf, Environment *ev);
  259. #define somMD_ODDocument_GetDocumentProperties "::ODDocument::GetDocumentProperties"
  260. #define ODDocument_GetDocumentProperties(somSelf,ev) \
  261.     (SOM_Resolve(somSelf, ODDocument, GetDocumentProperties) \
  262.     (somSelf,ev))
  263. #ifndef SOMGD_GetDocumentProperties
  264.     #if (defined(_GetDocumentProperties) || defined(__GetDocumentProperties))
  265.         #undef _GetDocumentProperties
  266.         #undef __GetDocumentProperties
  267.         #define SOMGD_GetDocumentProperties 1
  268.     #else
  269.         #define _GetDocumentProperties ODDocument_GetDocumentProperties
  270.     #endif /* _GetDocumentProperties */
  271. #endif /* SOMGD_GetDocumentProperties */
  272.  
  273. /*
  274.  * New Method: CollapseDrafts
  275.  */
  276. typedef ODDocument*   (SOMLINK *somTD_ODDocument_CollapseDrafts)(ODDocument *somSelf, Environment *ev,
  277.         ODDraft* from,
  278.         ODDraft* to);
  279. #define somMD_ODDocument_CollapseDrafts "::ODDocument::CollapseDrafts"
  280. #define ODDocument_CollapseDrafts(somSelf,ev,from,to) \
  281.     (SOM_Resolve(somSelf, ODDocument, CollapseDrafts) \
  282.     (somSelf,ev,from,to))
  283. #ifndef SOMGD_CollapseDrafts
  284.     #if (defined(_CollapseDrafts) || defined(__CollapseDrafts))
  285.         #undef _CollapseDrafts
  286.         #undef __CollapseDrafts
  287.         #define SOMGD_CollapseDrafts 1
  288.     #else
  289.         #define _CollapseDrafts ODDocument_CollapseDrafts
  290.     #endif /* _CollapseDrafts */
  291. #endif /* SOMGD_CollapseDrafts */
  292.  
  293. /*
  294.  * New Method: GetDraft
  295.  */
  296. typedef ODDraft*   (SOMLINK *somTD_ODDocument_GetDraft)(ODDocument *somSelf, Environment *ev,
  297.         ODDraftPermissions perms,
  298.         ODDraftID id,
  299.         ODDraft* draft,
  300.         ODPositionCode posCode,
  301.         ODBoolean release);
  302. #define somMD_ODDocument_GetDraft "::ODDocument::GetDraft"
  303. #define ODDocument_GetDraft(somSelf,ev,perms,id,draft,posCode,release) \
  304.     (SOM_Resolve(somSelf, ODDocument, GetDraft) \
  305.     (somSelf,ev,perms,id,draft,posCode,release))
  306. #ifndef SOMGD_GetDraft
  307.     #if (defined(_GetDraft) || defined(__GetDraft))
  308.         #undef _GetDraft
  309.         #undef __GetDraft
  310.         #define SOMGD_GetDraft 1
  311.     #else
  312.         #define _GetDraft ODDocument_GetDraft
  313.     #endif /* _GetDraft */
  314. #endif /* SOMGD_GetDraft */
  315.  
  316. /*
  317.  * New Method: GetBaseDraft
  318.  */
  319. typedef ODDraft*   (SOMLINK *somTD_ODDocument_GetBaseDraft)(ODDocument *somSelf, Environment *ev,
  320.         ODDraftPermissions perms);
  321. #define somMD_ODDocument_GetBaseDraft "::ODDocument::GetBaseDraft"
  322. #define ODDocument_GetBaseDraft(somSelf,ev,perms) \
  323.     (SOM_Resolve(somSelf, ODDocument, GetBaseDraft) \
  324.     (somSelf,ev,perms))
  325. #ifndef SOMGD_GetBaseDraft
  326.     #if (defined(_GetBaseDraft) || defined(__GetBaseDraft))
  327.         #undef _GetBaseDraft
  328.         #undef __GetBaseDraft
  329.         #define SOMGD_GetBaseDraft 1
  330.     #else
  331.         #define _GetBaseDraft ODDocument_GetBaseDraft
  332.     #endif /* _GetBaseDraft */
  333. #endif /* SOMGD_GetBaseDraft */
  334.  
  335. /*
  336.  * New Method: CreateDraft
  337.  */
  338. typedef ODDraft*   (SOMLINK *somTD_ODDocument_CreateDraft)(ODDocument *somSelf, Environment *ev,
  339.         ODDraft* below,
  340.         ODBoolean releaseBelow);
  341. #define somMD_ODDocument_CreateDraft "::ODDocument::CreateDraft"
  342. #define ODDocument_CreateDraft(somSelf,ev,below,releaseBelow) \
  343.     (SOM_Resolve(somSelf, ODDocument, CreateDraft) \
  344.     (somSelf,ev,below,releaseBelow))
  345. #ifndef SOMGD_CreateDraft
  346.     #if (defined(_CreateDraft) || defined(__CreateDraft))
  347.         #undef _CreateDraft
  348.         #undef __CreateDraft
  349.         #define SOMGD_CreateDraft 1
  350.     #else
  351.         #define _CreateDraft ODDocument_CreateDraft
  352.     #endif /* _CreateDraft */
  353. #endif /* SOMGD_CreateDraft */
  354.  
  355. /*
  356.  * New Method: SaveToAPrevDraft
  357.  */
  358. typedef void   (SOMLINK *somTD_ODDocument_SaveToAPrevDraft)(ODDocument *somSelf, Environment *ev,
  359.         ODDraft* from,
  360.         ODDraft* to);
  361. #define somMD_ODDocument_SaveToAPrevDraft "::ODDocument::SaveToAPrevDraft"
  362. #define ODDocument_SaveToAPrevDraft(somSelf,ev,from,to) \
  363.     (SOM_Resolve(somSelf, ODDocument, SaveToAPrevDraft) \
  364.     (somSelf,ev,from,to))
  365. #ifndef SOMGD_SaveToAPrevDraft
  366.     #if (defined(_SaveToAPrevDraft) || defined(__SaveToAPrevDraft))
  367.         #undef _SaveToAPrevDraft
  368.         #undef __SaveToAPrevDraft
  369.         #define SOMGD_SaveToAPrevDraft 1
  370.     #else
  371.         #define _SaveToAPrevDraft ODDocument_SaveToAPrevDraft
  372.     #endif /* _SaveToAPrevDraft */
  373. #endif /* SOMGD_SaveToAPrevDraft */
  374.  
  375. /*
  376.  * New Method: SetBaseDraftFromForeignDraft
  377.  */
  378. typedef void   (SOMLINK *somTD_ODDocument_SetBaseDraftFromForeignDraft)(ODDocument *somSelf, Environment *ev,
  379.         ODDraft* draft);
  380. #define somMD_ODDocument_SetBaseDraftFromForeignDraft "::ODDocument::SetBaseDraftFromForeignDraft"
  381. #define ODDocument_SetBaseDraftFromForeignDraft(somSelf,ev,draft) \
  382.     (SOM_Resolve(somSelf, ODDocument, SetBaseDraftFromForeignDraft) \
  383.     (somSelf,ev,draft))
  384. #ifndef SOMGD_SetBaseDraftFromForeignDraft
  385.     #if (defined(_SetBaseDraftFromForeignDraft) || defined(__SetBaseDraftFromForeignDraft))
  386.         #undef _SetBaseDraftFromForeignDraft
  387.         #undef __SetBaseDraftFromForeignDraft
  388.         #define SOMGD_SetBaseDraftFromForeignDraft 1
  389.     #else
  390.         #define _SetBaseDraftFromForeignDraft ODDocument_SetBaseDraftFromForeignDraft
  391.     #endif /* _SetBaseDraftFromForeignDraft */
  392. #endif /* SOMGD_SetBaseDraftFromForeignDraft */
  393.  
  394. /*
  395.  * New Method: InitDocument
  396.  */
  397. typedef void   (SOMLINK *somTD_ODDocument_InitDocument)(ODDocument *somSelf, Environment *ev,
  398.         ODContainer* container,
  399.         ODDocumentID id);
  400. #define somMD_ODDocument_InitDocument "::ODDocument::InitDocument"
  401. #define ODDocument_InitDocument(somSelf,ev,container,id) \
  402.     (SOM_Resolve(somSelf, ODDocument, InitDocument) \
  403.     (somSelf,ev,container,id))
  404. #ifndef SOMGD_InitDocument
  405.     #if (defined(_InitDocument) || defined(__InitDocument))
  406.         #undef _InitDocument
  407.         #undef __InitDocument
  408.         #define SOMGD_InitDocument 1
  409.     #else
  410.         #define _InitDocument ODDocument_InitDocument
  411.     #endif /* _InitDocument */
  412. #endif /* SOMGD_InitDocument */
  413.  
  414. /*
  415.  * New Method: ReleaseDraft
  416.  */
  417. typedef ODDocument*   (SOMLINK *somTD_ODDocument_ReleaseDraft)(ODDocument *somSelf, Environment *ev,
  418.         ODDraft* draft);
  419. #define somMD_ODDocument_ReleaseDraft "::ODDocument::ReleaseDraft"
  420. #define ODDocument_ReleaseDraft(somSelf,ev,draft) \
  421.     (SOM_Resolve(somSelf, ODDocument, ReleaseDraft) \
  422.     (somSelf,ev,draft))
  423. #ifndef SOMGD_ReleaseDraft
  424.     #if (defined(_ReleaseDraft) || defined(__ReleaseDraft))
  425.         #undef _ReleaseDraft
  426.         #undef __ReleaseDraft
  427.         #define SOMGD_ReleaseDraft 1
  428.     #else
  429.         #define _ReleaseDraft ODDocument_ReleaseDraft
  430.     #endif /* _ReleaseDraft */
  431. #endif /* SOMGD_ReleaseDraft */
  432. #ifndef SOM_DONT_USE_INHERITED_MACROS
  433. #define ODDocument_InitRefCntObject ODRefCntObject_InitRefCntObject
  434. #define ODDocument_GetRefCount ODRefCntObject_GetRefCount
  435. #define ODDocument_InitObject ODObject_InitObject
  436. #define ODDocument_IsInitialized ODObject_IsInitialized
  437. #define ODDocument_HasExtension ODObject_HasExtension
  438. #define ODDocument_GetExtension ODObject_GetExtension
  439. #define ODDocument_ReleaseExtension ODObject_ReleaseExtension
  440. #define ODDocument_Purge ODObject_Purge
  441. #define ODDocument_SubClassResponsibility ODObject_SubClassResponsibility
  442. #define ODDocument_somFree SOMObject_somFree
  443. #define ODDocument_somGetClass SOMObject_somGetClass
  444. #define ODDocument_somGetClassName SOMObject_somGetClassName
  445. #define ODDocument_somGetSize SOMObject_somGetSize
  446. #define ODDocument_somIsA SOMObject_somIsA
  447. #define ODDocument_somIsInstanceOf SOMObject_somIsInstanceOf
  448. #define ODDocument_somRespondsTo SOMObject_somRespondsTo
  449. #define ODDocument_somDispatchV SOMObject_somDispatchV
  450. #define ODDocument_somDispatchL SOMObject_somDispatchL
  451. #define ODDocument_somDispatchA SOMObject_somDispatchA
  452. #define ODDocument_somDispatchD SOMObject_somDispatchD
  453. #define ODDocument_somDispatch SOMObject_somDispatch
  454. #define ODDocument_somClassDispatch SOMObject_somClassDispatch
  455. #define ODDocument_somPrintSelf SOMObject_somPrintSelf
  456. #define ODDocument_somDumpSelf SOMObject_somDumpSelf
  457. #define ODDocument_somDumpSelfInt SOMObject_somDumpSelfInt
  458. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  459.  
  460. #endif       /* SOM_ODDocument_h */
  461.